#ifndef FILEOPS_H
#define	FILEOPS_H
#include "Windows.h"
#include <string>

struct FileOps {
    FileOps();
    virtual ~FileOps();
    //caller has to delete extracted data
    static bool read(const char* path, BYTE* data, int bytecount);
    static bool write(const char* path, BYTE* data, int bytecount);
    static bool append(const char* path, BYTE* data, int bytecount);
    static int getFileSize(const char* path);
    static bool createDirectory(const char* path);
    static char* getTimestamp();
    static char* getFileTree(char* folder, int* length);
    static HANDLE createFile(const char* path, DWORD readType);
    static std::string getParent(const char* path);
    static std::string getName(const char* path);
	static bool exists(const char* path);
	static bool deleteFile(const char* path);

	static char* longToString(long lvar, int base);
	static char* integerToString(int integer, int base);
    static int stringToInteger(char* string);
	static double stringToDouble(char* string);
};

#endif	/* FILEOPS_H */

